<template>
  <div>
    <button @click="chanageStyle">显示/隐藏</button>
    <!-- 
      appera属性时一上来就播放一次动画
      当动画需要用于多个元素的时候要用transition-group标签包裹，并且每个元素都要有:key="key"
       -->
    <transition-group name="hello" appear>
      <h1 v-show="!isShow" key="1">你好啊!</h1>
      <h1 v-show="isShow" key="2">尚硅谷Vue课程</h1>
    </transition-group>
  </div>
</template>

<script>
export default {
  name: 'Test',
  data() {
    return {
      isShow: true,
    };
  },
  methods: {
    chanageStyle() {
      this.isShow = !this.isShow;
    },
  },
};
</script>

<style scoped>
/* 过渡效果实现 */
h1 {
  background-color: orange;
}
/* 播放动画的名字要有规则, transition标签的name-enter-active*/
/* .hello-enter-active {
  animation: change 1s;
}
.hello-leave-active {
  animation: change 1s reverse;
} */

/* 进入的起点，离开的终点 */
.hello-enter,
.hello-leave-to {
  transform: translateX(-100%);
}
/* 进入的终点,离开的起点 */
.hello-enter-to,
.hello-leave {
  transform: translateX(0);
}

/* 进入和离开的过程中 */
.hello-enter-active,
.hello-leave-active {
  transition: 0.5s;
}
</style>
